Hierarchical operational control of aggregated load management resources

ABSTRACT

An aggregation comprises: loads that draw electricity, and a hierarchy including a root dispatch engine at the top of the hierarchy, downstream dispatch engines each servicing downstream points comprising further downstream dispatch engines or loads, and the loads at the bottom of the hierarchy. Each downstream dispatch engine sends draw dispatches to its downstream points such that the total draw computed by summing the draw dispatches equals a draw dispatch received by the downstream dispatch engine from the dispatch engine above it in the hierarchy. The sent draw dispatches also satisfy downstream point draw constraints communicated to the downstream dispatch engine from its downstream points. In a method, a baseline long-term draw dispatch is determined for the aggregation, and the baseline long-term draw dispatch is modulated over a shorter time interval based on a short-term draw requirement to determine a draw dispatch for the aggregation.

This application claims the benefit of U.S. Provisional Application No.62/095,642 filed Dec. 22, 2014 and titled “HIERARCHICAL OPERATIONALCONTROL OF AGGREGATED LOAD MANAGEMENT RESOURCES”. U.S. ProvisionalApplication No. 62/095,642 filed Dec. 22, 2014 is incorporated herein byreference in its entirety.

BACKGROUND

The following relates to the electrical power grid arts, electricalpower grid frequency control arts, and related arts.

In conventional electrical power grid management, electrical powergeneration is controlled to match the current power demand. Thisapproach requires making adequate provision for peak load by providing asource of excess power generating capacity, for example by providingancillary generators that are brought on-line at peak demand hours. Theexcess power generating capacity is not used except during peak demandperiods, and usually represents a net cost for the utility provider.Other approaches for matching generation to demand include shiftingpower between geographical grid regions, which again usually representsa net cost to the utility due to transmission line losses and so forth.

In demand response systems, loads (i.e. demand) are adjusted to matchthe available power generation. This approach can be cost effectivesince the utility can provide less excess power generating capacity.Commercial models for demand response systems typically include someincentive mechanism to induce load owners to participate in the demandresponse system. The Federal Energy Regulatory Commission (FERC) hascodified incentivizing demand response systems in Order No. 745 issuedMarch 2011, which mandates compensation for providers of demand responseparticipating in the wholesale power marketplace.

By way of illustrative example, some demand response systems aredescribed in Kirby & Staunton, “Technical Potential for Peak LoadManagement Programs in New Jersey”, Oak Ridge National LaboratoryORNL/TM-2002/271 (October 2002), and Kirby, “Spinning Reserve FromResponsive Loads”, Oak Ridge National Laboratory ONRL/TM-2003/19 (March2003). These references disclose loads operated as contingency reservesmarketed on the day-ahead or hour-ahead markets. For example, spinningreserve may be provided using aggregations of air conditioners, waterheaters, or so forth. A wireless communication network including theInternet is employed to send curtailment commands to thermostats whichrespond by taking immediate action or adjusting their schedules forfuture action. The thermostats send back data on temperature, set point,and power consumption. Thermostats can be addressed individually, ingroups, or in total.

Brooks et al., “PG & E and Tesla Motors: Vehicle to Grid Demonstrationand Evaluation Program, EVS23 (2007) discloses another illustrativeexample, in which an aggregation of loads in the form of electricvehicle battery chargers is leveraged to perform ancillary services forthe grid, including frequency regulation based on an automaticgeneration control (AGC) signal. In a disclosed approach, a preferredoperating point is defined, and the market value of regulation is basedon deviations from this preferred operating point.

A difficulty with demand response systems is that the grid-levelcommands to adjust load draw (power or average energy over some timeinterval) can conflict with other limitations imposed on the loads. Acommon concern is interference with the intended use of the load. Forexample, operating an air conditioner continuously to provide increaseddraw can result in the air conditioned space becoming too cool;conversely, turning off the air conditioner for too long can result inthe space becoming too hot. The use of an aggregation of loads canalleviate these problems, as loads can be prioritized to run (or notrun) based on their current state, e.g. if increased draw is needed thenthose air conditioners whose thermostats are reading a high temperatureare chosen to run first, before running air conditioners whosethermostats are reading a low temperature.

However, such load aggregation approaches cannot remediate other typesof possible conflicts. For example, the call for increased demand mayconflict with circuit-level limitations on current draw imposed bycircuit breakers, or different types of ancillary services executingconcurrently may also conflict. For example, a curtailment command(which requires reducing draw) may conflict with operation of the loadfor frequency regulation in which the automatic generation control (AGC)signal calls for increased draw to reduce a high grid frequency.

Disclosed herein are approaches for addressing such conflicts and/orother disadvantages of existing demand response systems employing loadaggregation.

BRIEF SUMMARY

In some illustrative embodiments disclosed as illustrative examplesherein, a method operates on an aggregation of loads that drawelectricity. The aggregation of loads is divided into a plurality ofload sub-aggregations. The method comprises: determining loadsub-aggregation draw constraints for the load sub-aggregations;computing sub-aggregation draw dispatches for the load sub-aggregationsthat simultaneously satisfy a draw requirement for the aggregation ofloads and the determined load sub-aggregation draw constraints; for eachload sub-aggregation, determining load dispatches for the loads of theload sub-aggregation to satisfy the draw dispatch computed for the loadsub-aggregation; communicating the load dispatches to the loads of theaggregation of loads; and operating the loads of the aggregation ofloads in accord with the communicated load dispatches.

In some illustrative embodiments disclosed as illustrative examplesherein, an aggregation comprises: loads that draw electricity, and ahierarchy including (1) a root dispatch engine at the top of thehierarchy, (2) downstream dispatch engines each servicing downstreampoints comprising one or both of further downstream dispatch engines andloads, and (3) said loads at the bottom of the hierarchy. The dispatchengines comprise electronic data processing devices. Each downstreamdispatch engine is configured to send draw dispatches to its downstreampoints such that the total draw computed by summing the draw dispatchesequals a draw dispatch received by the downstream dispatch engine fromthe dispatch engine above it in the hierarchy. The sent draw dispatchesalso satisfy downstream point draw constraints communicated to thedownstream dispatch engine from its downstream points. In someillustrative embodiments, the aggregation conveys constraints upwardthrough the hierarchy and conveys draw dispatches downward through thehierarchy.

In some illustrative embodiments disclosed as illustrative examplesherein, a method is disclosed for operating on an aggregation of loadsthat draw electricity. The method comprises: determining a baselinelong-term draw dispatch for the aggregation based on a long-term drawrequirement over a first time interval; modulating the baselinelong-term draw dispatch over a second time interval shorter than thefirst time interval based on a short-term draw requirement to determinea draw dispatch for the aggregation; determining load dispatches for theloads of the aggregation to satisfy the draw dispatch for theaggregation; communicating the load dispatches to the loads of theaggregation; and operating the loads of the aggregation in accordancewith the communicated load dispatches. The long-term draw requirementmay, for example, be a load shifting command, possibly comprising anindication of the power generation level of a wind farm, photovoltaicfarm, or other intermittent power generation source. The short-term drawrequirement may, for example, be a frequency regulation (FR) drawrequirement generated based on an automatic generation control (AGC)signal. In some embodiments the short-term draw requirement averages tozero over the first time interval. In some embodiments the first timeinterval is on the order of minutes or hours and the second timeinterval is on the order of seconds.

In some illustrative embodiments disclosed as illustrative examplesherein, a method is disclosed for operating on an aggregation of loadsthat draw electricity from an electrical power grid. The methodcomprises optimizing load dispatches P_(l) for the loads of theaggregation where l=1, . . . , L indexes the loads of the aggregation byminimizing a performance measure or total cost function C using aconstrained cost minimization with respect to the draw dispatches P_(l),where the cost includes cost components indexed g=1, . . . , G, a costis associated with the g^(th) goal for load l, a priority weight w_(g)is assigned to the g^(th) goal, and P_(req) is a draw requirement forthe aggregation of loads. The method further comprises communicating theload dispatches P_(l) to the loads of the aggregation, and operating theloads of the aggregation in accord with the communicated load dispatchesP_(l). The constrained cost minimization may be further constrained byconstraints on one or more loads of the aggregation. The method mayfurther comprise generating the draw requirement P_(req) for theaggregation of loads from an automatic generation control (AGC) signalprovided by the electrical power grid.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 diagrammatically shows a demand response system employing anaggregation of loads that is divided into sub-aggregations on the basisof common power delivery circuits.

FIG. 2 diagrammatically shows a method suitably performed by the demandresponse system of FIG. 1 for providing frequency regulation service tothe electric grid while also obeying operational constraints on powerhandled by the various electrical circuits feeding the aggregation.

FIG. 3 diagrammatically shows a hierarchical extension of Circuit A ofthe demand response system of FIG. 1 so as to illustrate a multi-levelhierarchical extension of the demand response system of FIG. 1.

FIG. 4 diagrammatically shows a demand response system employing anaggregation of loads used to provide both frequency regulation on a timescale on the order of seconds and load shifting on a time scale ofminutes to hours.

FIG. 5 diagrammatically shows a method of providing ancillary gridservices including both frequency regulation and load shifting suitablyperformed by the demand response system of FIG. 4.

DETAILED DESCRIPTION

Disclosed herein are systems and methods for implementing hierarchicalcontrol of aggregated load resources for grid operations, which operateby dynamically aggregating and dispatching loads to meet multipleoperational requirements. The system or method is implemented such thatthere is a single aggregation group serving the highest/largestoperational requirement (e.g. grid balancing or another ancillaryservice provided to the grid) and sub-groups that are simultaneouslyproviding lower level services (e.g. reducing load on a particularfeeder/transformer). This approach allows individual loads toparticipate in multiple operational load management programssimultaneously. For instance, a single water heater may simultaneouslyparticipate in a frequency regulation program for transmissionoperations and a voltage support program for distribution leveloperations.

To maximize the potential operational benefits from load managementprograms, it is advantageous to utilize any individual load to providemultiple services across geography and/or time scales. In practice,however, there is a potential for competing or contradictoryrequirements when a single load is providing multiple servicessimultaneously. Systems and methods disclosed herein enable loads tosimultaneously provide multiple operational services by creating anddispatching dynamic aggregation groups and reallocating requirementsacross groups to meet requirements at different (e.g. global versuslocal) levels.

In one example embodiment, an aggregation is divided into: a group ofwater heaters residing on the same electrical circuit (Circuit A); andanother group of water heaters residing on an adjacent circuit (CircuitB). All the water heaters are in general able to provide a service tothe electrical grid, such as frequency regulation, spinning reserves,load shifting, or so forth, where the operational objective resides atthe transmission, wholesale, or bulk grid level. At the same time, theremay be operational issues at the circuit level (such as overloads,voltage swings, or so forth) that only the loads on a circuit mayprovide support to alleviate. Under our system, the loads on Circuit Amay, for example, provide both voltage support on Circuit A andfrequency regulation for the entire system. When a scenario arises inwhich the bulk requirement contradicts the local requirement (i.e. localconstraint), the local requirement will be served first (since thistypically has a subset of the population of responsive loads) and thenthe remaining population of loads will be dispatched to meet the bulk(or higher level) requirement. There can be as many levels of control aspracticable by the number of loads and the size of the requirements ateach level. Thus, a multi-level hierarchy is present.

To allow for this satisfaction of multi-level requirements, subgroups ofaggregated loads are suitably defined at each level, and only theappropriate group used to meet the requirements at its level. For theabove example, the loads in Circuit A may be dispatched to increase thetotal load on the circuit in order to absorb excess distributed powergeneration and prevent reverse power flows or overvoltages. At the sametime, there may be an excess of total load at the bulk system level,which calls for the total usage of the entire aggregated fleet of waterheaters to be reduced. The disclosed system first dispatches the waterheaters on Circuit A to meet the requirement there (at the level ofCircuit A), and then dispatches the remaining water heaters (in thiscase from Circuit B) to reduce the total load on the system. In thisscenario, the second dispatch includes the original bulk load reductionrequirement plus a constraint of an additional amount of load reductionto make up for the load additions on Circuit A). In a similar fashion,the disclosed systems and methods may also be applied for requirementsthat vary across time, but not geography, in which case the long termobjectives will be met first, and then short term objectives.

If there are insufficient resources at each level to meet the associatedrequirements at any given time, then the system suitably utilizesweighting functions to develop a prioritization scheme to allocateresources across the different objectives. In one approach, theprioritization scheme always satisfy local requirements, and then asmuch of remaining bulk requirement as possible. In another approach, theprioritization scheme evenly distributes resources across levels.

As used herein, the term “draw” denotes either a power draw (forexample, measured in watts) or an energy draw averaged over a designatedtime interval (for example, measured in joules or kilowatt-hours (kWh)).In the following, various draw values are denoted using the letter P(with appropriate subscripts or other auxiliary notation).

With reference to FIG. 1, an electrical grid operator, such as anillustrative regional transmission organization (RTO) 8, operates togenerate an automatic generation control (AGC) signal that iscommunicated to a frequency regulation (FR) dispatch engine 10 thatservices an aggregation of loads 12 that draw electricity from theelectrical grid. While in the illustrative example the root dispatchengine of the hierarchy provides FR to the grid, more generally the rootdispatch engine can service some other need, such as providing spinningreserve, load shifting, or so forth. The illustrative loads 12 are waterheaters; more generally, the loads can be any devices that drawelectricity, such as heating, ventilation, and air conditioning (HVAC)units, dishwashers, or so forth. The aggregation of loads 12 is dividedinto sub-aggregations that each service some need other than FR. In theillustrative example, the sub-aggregations are defined by electricalcircuits: a sub-aggregation 14 is served by a common electrical circuitdenoted herein without loss of generality as “Circuit A”; asub-aggregation 16 is similarly served by a common electrical circuitdenoted as “Circuit B”; and a sub-aggregation 18 is served by a commonelectrical circuit denoted herein as “Circuit C”. Each sub-aggregationis serviced by a dispatch engine for that sub-aggregation: the “CircuitA” sub-aggregation 14 is serviced by a Circuit A dispatch engine 20; the“Circuit B” sub-aggregation 16 is serviced by a Circuit B dispatchengine 22; and the “Circuit C” sub-aggregation 18 is serviced by aCircuit C dispatch engine 24.

The dispatch engine 20, 22, 24 for each respective sub-aggregation 14,16, 18 receives information from the loads of that sub-aggregation, suchas metered power via power meters 26. Based on this information, eachdownstream dispatch engine 20, 22, 24 determines whether to impose anyload sub-aggregation draw constraints on its serviced load. For example,such a constraint may be intended to prevent overload of the circuit, orlimit voltage swings on the circuit, or so forth. In determining whetherto impose any load sub-aggregation draw constraints on its servicedload, the dispatch engine may utilize a priori knowledge of the circuitsuch as its circuit breaker current limit, rated power, or so forth.

Each circuit dispatch engine 20, 22, 24 communicates its loadsub-aggregation (circuit) draw constraint(s), if any, to the root (FR)dispatch engine 10. The FR dispatch engine 10 then computessub-aggregation draw dispatches for the load sub-aggregations thatsimultaneously satisfy a draw requirement for the aggregation of loads12 and the determined load sub-aggregation draw constraints. In theillustrative case, the draw requirement for the aggregation of loads 12is determined to provide frequency regulation based on the AGC signalfrom the RTO 8. In a suitable approach, the FR dispatch engine 10schedules the aggregation 12 for a baseline draw. The FR dispatch engine10 controls the loads 12 adjusts power draw of the aggregation 12 upward(more load) respective to the baseline in response to the AGC indicatinga high grid frequency condition, and adjusts power draw of theaggregation 12 downward (less load) respective to the baseline inresponse to the AGC indicating a low grid frequency condition. Thedeviation from baseline serves as suitable audit data conveyed to theRTO 8 to provide an auditable record of the FR capacity provided by theaggregation 12. The circuit draw dispatches are communicated from the FRdispatch engine 10 to the respective downstream circuit dispatch engines20, 22, 24.

At each circuit dispatch engines 20, 22, 24, load dispatches aredetermined for the loads of the controlled load sub-aggregation tosatisfy the (circuit) draw dispatch computed for the loadsub-aggregation at the FR dispatch engine 10. The load dispatches may,for example, be “on” or “off” dispatches that turn individual waterheaters on or off, taking into account an urgency state. For example,each water heater can convey to the dispatch engine its need to run(highest if the water temperature is at its lowest point within itsthermostat control band, and lowest if the water temperature is at itshighest point within its thermostat control band) and the loaddispatches direct those water heaters with highest urgency to run untilthe draw dispatch for the circuit is satisfied. For other types ofloads, the load dispatches may be real-valued, for example identifyingthe kW power draw. The load dispatches are communicated to the loads,and the loads operate in accordance with the communicated loaddispatches.

With continuing reference to FIG. 1 and with further reference to FIG.2, a control process suitably performed by a system such as that of FIG.1 is described. In this control process, the number of circuits isgenerically denoted as C (where C is an integer greater than or equal totwo), and the circuits are indexed by c=1, . . . , C. The draw dispatchfor each circuit is denoted P_(c) and so the total draw dispatch for theaggregation can be written as Σ_(c) ^(C)=P_(c). In an operation S1, ateach circuit dispatch engine 20, 22, 24 any circuit draw constraint isdetermined. The circuit draw constraints are generically denoted asK_(c), c=1, . . . , C. A given circuit draw constraint K_(c) may be arequired circuit draw, for example, K_(c)=300 W indicating the circuitmust draw 300 watts of power. Alternatively, a circuit draw constraintmay be a limit or a set of limits on the circuit power draw. For examplethe circuit draw constraint K_(c)≦300 W indicates the circuit c mustdraw no more than 300 watts. The circuit draw constraint K_(c)≧50 Windicates the circuit c must draw at least 50 watts. The circuit drawconstraint K_(c)≧50 W AND K_(c)≦300 W indicates the circuit c must drawbetween 50 watts and 300 watts. In the operation S1, at each circuitdispatch engine 20, 22, 24 the circuit draw constraint (if any) isdetermined, that is, the value of K_(c) for each circuit c=1, . . . , Cis determined, and this circuit draw constraint is communicated to theFR dispatch engine 10. If a circuit has no draw constraint, this issuitably communicated, for example by setting K_(c)=0 to indicate thatcircuit c has no draw constraint.

In an operation S2 performed at the frequency regulation dispatchengine, the aggregate draw required for frequency regulation, denotedhere as P_(FR), is determined based on the received automatic generationcontrol (AGC) signal received from the RTO or other grid operator.

In an operation S3, the information obtained at the frequency regulationdispatch engine from operations S1 and S2 are used to determine acircuit draw dispatch P_(c) for each circuit c=1, . . . , C such thatthe aggregate draw P_(FR) is satisfied while all circuit drawconstraints are also satisfied. This can be written as:

$\begin{matrix}{{P_{FR} = {{\sum\limits_{c = 1}^{C}\; {P_{c}\text{s.t.}P_{c}\mspace{14mu} {satisfies}\mspace{14mu} K_{c}\mspace{14mu} {for}\mspace{14mu} c}} = 1}},\ldots \mspace{14mu},C} & (1)\end{matrix}$

where s. t. denotes “subject to”. This is a constrained optimizationproblem in which the draw dispatches P₁, P₂, . . . , P_(C) are to beoptimized subject to respective equality and/or inequality constraintsK₁, K₂, . . . , K_(C). The constrained optimization of Expression (1)can be solved using a constrained optimization algorithm suitable forthe specified constraints, such as linear programming in the case ofequality and/or inequality constraints. If the number of circuits isrelatively small, then an iterative solution approach may be feasible,such as gradient descent or Levenberg-Marquardt, in which the parameterconstraints K_(c) are applied in each iteration to prevent theparameters from violating their respective constraints. The optimizedoutputs P₁, P₂, . . . , P_(C) serve as the circuit dispatch values, andare sent to the respective circuit dispatch engines 20, 22, 24. Theoptimization may be performed over various time horizons, e.g. a horizonof a day, a week, a month, or so forth, and updates are performed on ashorter basis, e.g. every second, minute, hour, day, or so forth.

In an operation S4, at each circuit dispatch engine 20, 22, 24, the loaddispatches are determined for the loads of the circuit so as to satisfythe circuit dispatch (in other words, load dispatches P_(l) aredetermined so that P_(c)=Σ_(l=1) ^(L) ^(c) P_(l) where the summationl=1, . . . , L_(c) is over the loads on the circuit c, and P_(l) is theload dispatch for load l). Additionally, the load dispatches P_(l)should satisfy any load constraints (for example, a water heater at itslowest allowable thermostat temperature may be required to run, whereasa water heater at its highest allowable thermostat temperature may berequired to not run). Thus, this is again a constrained optimizationwhich is analogous to Expression (1), but at the load sub-aggregationlevel.

In some contemplated embodiments, the circuit draw constraints arealways required circuit draws, for example, K_(c)=300 W indicating thecircuit must draw 300 watts of power. In this case, the set ofconstrained circuits can be written as S_(K) and the set ofunconstrained circuits as S _(K) , and Expression (1) can be written as:

$\begin{matrix}{P_{FR} = {{P_{K} + {\sum\limits_{c \in S_{\overset{\_}{K}}}\; P_{c}}} = {{\sum\limits_{c \in S_{K}}K_{c}} + {\sum\limits_{c \in S_{\overset{\_}{K}}}P_{c}}}}} & (2)\end{matrix}$

where P_(K)=Σ_(c∈S) _(K) K_(c) is the total required draw of theconstrained circuits, and the optimization is over circuit drawdispatches P_(c), c∈S _(K) . In this case, the draw dispatches for thosecircuits having circuit draw constraints are equal to the constraints(required circuit draws), i.e. P_(c)=K_(c) for all c∈S_(K), and so thosedraw dispatches are effectively determined first, at the respectivecircuit dispatch engines for circuits c∈S_(K).

With reference to FIG. 3, the hierarchical aggregation control can beextended to hierarchies with additional levels. In illustrative FIG. 3,the sub-aggregation 14 on Circuit A is itself divided into twosub-circuits, namely Circuit A.1 and Circuit A.2, having respectivedispatch engines 30, 32 which are downstream of the Circuit A dispatchengine 20. Dispatch engine 30 services a load sub-aggregation 40 onCircuit A.1, while dispatch engine 32 services a load sub-aggregation 42on Circuit A.2. The Circuit A.1 dispatch engine 30 determines a circuitdraw constraint (if any) for the load sub-aggregation 40 on Circuit A.1.The Circuit A.2 dispatch engine 32 determines a circuit draw constraint(if any) for the load sub-aggregation 42 on Circuit A.2. Theseconstraints are communicated to the higher-level Circuit A dispatchengine 20, which operates as already described except that it calculates(sub-)circuit dispatches for the load sub-aggregations 40, 42, ratherthan calculating the load dispatches directly. The dispatch engine 30then generates the load dispatches for the loads in its sub-aggregation40 in order to satisfy the (sub-)circuit dispatch received from theCircuit A dispatch engine 20, and similarly the dispatch engine 32generates the load dispatches for the loads in its sub-aggregation 42 inorder to satisfy the (sub-)circuit dispatch received from the Circuit Adispatch engine 20. It will be appreciated that this approach can bereadily extended to additional hierarchical levels.

In the illustrative examples of FIGS. 1-3, the loads of the aggregation12 are divided into sub-aggregations based on electrical layout asdefined by the load-servicing circuit. This is a type of spatial orgeographical division, although it will be appreciated that the loads ofdifferent circuits might actually overlap in space. For example, in acommercial building all water heaters may be on one circuit, while allHVAC units in the same commercial building may be on a differentcircuit. In this case, the water heaters are suitably onesub-aggregation and the HVAC units are suitably another sub-aggregation.Other types of spatial division are contemplated, which may not bedefined by the circuit (i.e. electrical layout). For example, loads maybe divided by geographical area, with sub-aggregations for differentgeographical areas serving more local needs such as load shifting whilethe combined aggregation serves FR or some other need spanning a largergeographical area.

With reference to FIG. 4, the disclosed hierarchical approach forsimultaneously servicing different tasks can also be implemented as afunction of time, rather than as a function of space. In illustrativeFIG. 4, the aggregation of loads 12 is not divided into sub-aggregationsas a function of space. However, processing is divided as a function oftime. The FR dispatch engine 10 operates to directly generate loaddispatches for the loads of the aggregation 12. In a typical electricalgrid in the United States, the RTO 8 updates the AGC signal about everyfour seconds (Δt_(FR)=4 sec). Thus, the FR is a relatively fast process.By comparison, some other ancillary grid services, such as peak shavingor supplying spinning reserve, are performed on a longer time scale. Forexample, in FIG. 4 it is indicated that the RTO 8 generates a loadshifting command which is in effect for a time period (Δt_(LS)) on theorder of minutes to hours. By way of illustration, the load shiftingcommand may be executed during times of peak load and commands loadshifting-compliant loads to reduce their power draw, or turn offcompletely.

As diagrammatically indicated in FIG. 4, the aggregation of loads 12simultaneously provides both FR and load shifting. To this end, the FRdispatch engine 10 operates on the rapid time basis of the AGC update(Δt_(FR)=4 sec) to provide frequency regulation based on the AGC signal.At the same time, a load shifting dispatch engine 50 operates to controlthe loads 12 to provide the load shifting ancillary service. Forexample, the load shifting may adjust the load based on power output ofa wind farm 52, by increasing the draw of the aggregation 12 when thewind farm is generating a high level of electrical power (due tofavorable winds) and decreasing the draw of the aggregation 12 when thewind farm is generating a lower level of electrical power (due to a lackof wind, or due to very high winds that require shut-down of the windfarm 52). To this end, the wind farm 52 communicates information aboutits current power generation level to the load shifting dispatch engine50, which adjusts a draw dispatch for load shifting on a relatively longtime scale (Δt_(LS)) typically on the order of minutes to hours,corresponding to the time frame over which wind conditions are likely tochange. By contrast, the modulation of the aggregation draw produced bythe FR dispatch engine 10 to achieve FR is on a shorter time frame(Δt_(FR)=4 sec), and is expected to average out to about zero over thelonger time frame (Δt_(LS)), as the FR causes the actual dispatched drawto vary approximately symmetrically, on average, above and below thescheduled baseline draw.

In view of the foregoing, it is disclosed to simultaneously provide anancillary service having a longer term (e.g. load shifting) and anancillary service having a shorter term (e.g. FR) as follows. Theancillary service having the longer time frame is performed first toproduce a modified baseline scheduled power draw that is averaged overthe longer term that is then modulated by the ancillary service havingthe shorter term. In the illustrative example of FIG. 4, the ancillaryservice having the longer time frame is performed by the load shiftingdispatch engine 50 to produce a modified baseline scheduled power drawthat is averaged over the longer term (Δt_(LS)). This load-shiftedbaseline is then modulated at the shorter time frame (Δt_(FR)) by the FRdispatch engine 10 to produce the frequency regulation, and the loaddispatches are generated based on this aggregation power draw thataccounts for both the load shifting and FR. While described in thecontext of combined load shifting and FR, it will be appreciated thatother ancillary services operating at significantly different timescales may be similarly combined, by meeting the longer term objectivefirst and then modifying this “modified baseline” to meet the shorterterm objective.

With reference to FIG. 5, a process performed by the system of FIG. 4 isdescribed. In an operation S10, the load shifting dispatch engine 50determines a load shift draw dispatch for the aggregation 12 to satisfya load shifting command (for example, embodied as the current level ofpower generation indicated by the wind farm 52 or indicated by aphotovoltaic farm or other intermittent power generation source, or inan alternate embodiment as a load shifting command issued by the RTO 8)over the time interval Δt_(LS) which is typically of order minutes tohours. In an operation S11, the FR dispatch engine 10 modifies (i.e.modulates) the load shift draw dispatch on the FR time scale (Δt_(FR)˜4sec) to provide a draw dispatch responsive to the AGC signal. Saidanother way, this draw dispatch is relative to the load shift drawdispatch, which is treated as a baseline schedule for the FR.Advantageously, over the longer time interval Δt_(LS) these FRmodulations (deviations from the load shift draw dispatch baseline) arelikely to average out to about zero, so that operation of the FRdispatch engine 10 to provide frequency response does not substantiallyimpact operation of the load shifting dispatch engine 50. Optionally, aconstraint can be added that the FR modulations average to zero over adesignated time frame. In an operation S12, at the FR dispatch engine 10the individual load dispatches are determined in order to satisfy theFR-modified draw dispatch.

While certain optimization goals and inputs/constraints have beenemployed in the foregoing illustrative examples, additional or othergoals and inputs/constraints, alone or in various combinations, may beconsidered for the aggregation and various sub-aggregations (inembodiments such as those of FIGS. 1-3), or for the aggregation onvarious time scales (in embodiments such as those of FIGS. 4-5). Somesuitable illustrative goals of optimization for a certain control signalmay, for example include: voltage level; maximizing revenue; minimizingmust-run and must-not-run conditions; maximizing probability of loadavailability for FR, load shifting, or some other service; minimizingswitching fatigue in loads that are switched on/off; and minimizingthermal losses. Some suitable illustrative constraints and inputs forassessing these goals may, for example include: price of electricity(hourly or on some other time scale); temperature band for a load (forexample, the permissible hottest and lowest water temperatures for anelectric water heater, or room temperature range permissible to maintaincustomer comfort when controlling an air conditioner or furnace);switching frequency in loads that are switched on/off; and thermallosses. Combinations of goals, inputs, and constraints may in general berepresented by a performance measure parameterized by the drawdispatches of the loads (and/or sub-aggregations), and the drawdispatches are then generated by adjusting the draw dispatches tooptimize the performance measure using a suitable mathematicaloptimization algorithm. In illustrative embodiments herein, theperformance measure is a cost function, and the optimization entailsminimizing the cost function.

By way of further illustrative example, hourly regulation prices areexpected to be periodic with a frequency on the order of one day, withlonger-term periodicity due to other intervals such as weekly or yearlyintervals. It is thus straightforward to develop an estimate ofelectricity prices over such time intervals. The frequency regulationdispatch engine 10 in some embodiments optimizes operation of theaggregation to be most active/available during high price hours andleast active/available during low price hours.

The availability of a water heater to be used in frequency regulationperformed by the FR dispatch engine 10 at any given time is determinedby its current tank temperature. If the water is at the maximumtemperature, then no additional energy can be consumed until the watercools down or is drawn out from use. If the water is at the minimumtemperature, then the water heater must run to add energy and cannot becontrolled for frequency regulation purposes. In both cases, allowingthe temperature to go outside of the max or min means that the waterheater is no longer contributing to the aggregate capacity for providingfrequency regulation, and hence this represents lost revenue.

Performance measures or cost functions can be incorporated into ageneralized optimization as follows. The draw requirement for theaggregation or sub-aggregation can be generalized to P_(req)=Σ_(e=1)^(N)P_(e) where P_(req) denotes the draw requirement (for example,P_(req)=P_(FR) for the frequency regulation draw requirement ofExpression (1)) and the summation e=1, . . . , N is over the loads orsub-aggregations that are aggregated to achieve the draw requirement(for example, N corresponds to the number of circuits C in the FRexample of Expression (1)). This constraint is combined with any otherconstraints on the draw dispatches (e.g. setting the draw dispatch for awater heater to zero if its reported temperature is above thetemperature band), and a cost function C summed over the N loads orsub-aggregations and over the G goals for which cost is to be optimizedis minimized subject to these constraints:

$\begin{matrix}{C = {{\int_{0}^{T}{\sum\limits_{e = 1}^{N}\; {\sum\limits_{g = 1}^{G}\; {w_{g}{C_{e,g}\left( P_{e} \right)}\mspace{14mu} \text{s.t.}\mspace{20mu} P_{reg}}}}} = {\sum\limits_{e = 1}^{N}\; {P_{e}\mspace{14mu} {and}\mspace{14mu} {other}\mspace{14mu} {constraints}}}}} & (3)\end{matrix}$

where T is the time horizon over which the cost is calculated, thesummation over g=1, . . . , G is over the G goals, the summation overe=1, . . . , N is over the N loads or sub-aggregations, C_(e,g)(P_(e))is the cost associated with the g^(th) goal for the e^(th) load orsub-aggregation when the draw dispatch for the e^(th) load orsub-aggregation is set to the value P_(e), and w_(g) is a priorityweight assigned to the g^(th) goal. In general, these costsC_(e,g)(P_(e)) may be a function of various inputs, such as the currentelectricity price for a cost associated with purchasing the electricity,or water temperature of a load for a thermal losses cost. Theconstrained cost minimization of Expression (3) is minimized withrespect to the set of draw dispatches P_(e), e=1, . . . , N.

In the hierarchical demand response system of FIGS. 1-3, Expression (3)is applied at each level of the hierarchy, where the “other constraints”are the constraints received from the next-lower level of the hierarchy.The summation e=1, . . . , N is over the devices of the appropriateaggregation or sub-aggregation for that level, and the goals g=1, . . ., G are also appropriate for the given level (for example, at thecircuit level two goals may be to minimize power drawn by the circuitand to minimize power fluctuations on the circuit). Some levels may nothave any goals, so that optimizing Equation (3) reduces to satisfyingthe constraint P_(req)=Σ_(e=1) ^(N)P_(e) along with the “otherconstraints”—that is, solving:

$\begin{matrix}{P_{reg} = {\sum\limits_{e = 1}^{N}\; {P_{e}\mspace{14mu} {s.t.\mspace{14mu} {other}}\mspace{20mu} {contraints}}}} & (4)\end{matrix}$

The “other constraints” suitably flow from the bottom of the hierarchyto the top of the hierarchy—for example, the power limits on theCircuits A.1 and A.2 of FIG. 3 flow upward to define the power limit onthe combined Circuit A, and the power limits on Circuits A, B, C thenserve as constraints on the FR optimization. Optimization processing ofthe draw dispatches suitably flows top-down so as to provide P_(req) toeach lower-level dispatch engine from the one above it in the hierarchy.For example, as described with reference to FIGS. 1 and 2, the FRdispatch engine 10 first operates (bound by constraints that flowedupward from the Circuits) to generate the circuit draw dispatches, andthen at each circuit dispatch engine 20, 22, 24 the load dispatches forthat circuit are optimized subject to the constraint P_(req)=Σ_(e=1)^(N)P_(e) where P_(req) is the draw dispatch for the circuit receivedfrom the FR dispatch engine 10 and the summation e=1, . . . , N is overthe loads serviced by that circuit. Because the FR dispatch engine 10determined the circuit dispatches subject to any circuit-levelconstraints, it is ensured that these circuit dispatches satisfy theconstraints on the total power draw of the individual circuits. Theconstraint P_(req)=∈_(e=1) ^(N)P_(e) at the circuit level ensures thatthe circuit meets the draw dispatch assigned to that circuit by the FRdispatch engine in order to meet the FR requirements, and additionallyin the optimization of Expression (3) at the circuit dispatch enginelevel constraints at the load level flowed upward from the servicedloads are applied as the “other constraints” so as to ensure that theload dispatches satisfy any load-level constraints.

For the embodiment of FIGS. 4 and 5, a constrained cost function of theform of Expression (3) can be applied as well. Here, the aggregation 12is not divided into sub-aggregations, so the “other constraints”comprise the load constraints. The load shifting engine computes theload shifting draw dispatch (denoted as P_(LS)), and Expression (3) isapplied at the frequency regulation (FR) level and can be written as:

$\begin{matrix}{C = {{{\sum\limits_{l = 1}^{L}{\sum\limits_{g = 1}^{G}\; {w_{g}{C_{l,g}\left( P_{l} \right)}{\mspace{11mu} \;}{s.\; t.\mspace{14mu} P_{LS}}}}} + {\Delta P}_{FR}} = {\sum\limits_{l = 1}^{L}\; {P_{l}\mspace{14mu} {and}\mspace{14mu} {load}\mspace{14mu} {constraints}}}}} & (5)\end{matrix}$

where L is the number of loads in the aggregation 12 and the summationl=1, . . . , L is over the loads of the aggregation 12. The term ΔP_(FR)is the modulation of the baseline power draw P_(LS) determined for loadshifting needed to provide frequency regulation. If the costoptimization is omitted, then Expression (5) reduces to solving:

$\begin{matrix}{{P_{LS} + {\Delta \; P_{FR}}} = {\sum\limits_{l = 1}^{L}\; {P_{l}\mspace{14mu} {s.t.\mspace{14mu} {load}}\mspace{14mu} {constraints}}}} & (6)\end{matrix}$

for the load dispatches P_(l). As previously noted, it is expected thatthe modulation ΔP_(FR) which is on the time scale Δt_(FR) should averageout to about zero over the longer time scale Δt_(LS) of the loadshifting dispatch P_(LS), so that the FR modulation ΔP_(FR) does notadversely impact the load shifting performed on the longer time scale.

The dispatch engines 10, 20, 22, 24, 30, 32, 50 suitably comprisecomputers, network servers, or other electronic data processing devicesthat are programmed to perform the disclosed operations. The dispatchengines have suitable wired or wireless communication links with theirdownstream points (loads or sub-aggregations) and with the upstreamdispatch engine (if any) in order to communicate the constraints and thedraw dispatches as described. In the case of the FR dispatch engine 10or other dispatch engines that update draw dispatches on a fast timescale, e.g. seconds, the draw requirements or bases therefor (e.g. theAGC signal) are suitably communicated electronically via wired orwireless communication links. On the other hand, a dispatch engine suchas the load shifting dispatch engine 50 that responds to drawrequirements that are updated on a longer time scale (minutes or hours)may optionally employ manual communication of the draw requirement orbasis therefor. For example, a human operator may optionally conveyinformation about the power generation output of the wind farm 52 to theload shifting dispatch engine 50 by telephone.

The preferred embodiments have been illustrated and described.Obviously, modifications and alterations will occur to others uponreading and understanding the preceding detailed description. It isintended that the invention be construed as including all suchmodifications and alterations insofar as they come within the scope ofthe appended claims or the equivalents thereof.

1. A method operating on an aggregation of loads that draw electricitywherein the aggregation of loads is divided into a plurality of loadsub-aggregations, the method comprising: determining loadsub-aggregation draw constraints for the load sub-aggregations;computing sub-aggregation draw dispatches for the load sub-aggregationsthat simultaneously satisfy a draw requirement for the aggregation ofloads and the determined load sub-aggregation draw constraints; for eachload sub-aggregation, determining load dispatches for the loads of theload sub-aggregation to satisfy the draw dispatch computed for the loadsub-aggregation; communicating the load dispatches to the loads of theaggregation of loads; and operating the loads of the aggregation ofloads in accord with the communicated load dispatches.
 2. The method ofclaim 1 wherein the draw is one of (i) power draw and (ii) energy drawover a unit time.
 3. The method of claim 1 wherein each loadsub-aggregation is a circuit of loads served by a common electricalcircuit, and the determining of load sub-aggregation draw constraintscomprises: determining circuit draw constraints.
 4. The method of claim1 further comprising: determining the draw requirement for theaggregation of loads to provide frequency regulation based on anautomatic generation control (AGC) signal.
 5. The method of claim 1wherein the draw requirement for the aggregation of loads provides oneof frequency regulation, spinning reserve, and load shifting for anelectrical grid from which the aggregation of loads draw electricity. 6.An apparatus comprising: an aggregation comprising: loads that drawelectricity, and a hierarchy including (1) a root dispatch engine at thetop of the hierarchy and (2) downstream dispatch engines each servicingdownstream points comprising one or both of further downstream dispatchengines and loads and (3) said loads at the bottom of the hierarchy, thedispatch engines comprising electronic data processing devices; whereineach downstream dispatch engine is configured to send draw dispatches toits downstream points such that the total draw computed by summing thedraw dispatches equals a draw dispatch received by the downstreamdispatch engine from the dispatch engine above it in the hierarchy andwherein the sent draw dispatches satisfy downstream point drawconstraints communicated to the downstream dispatch engine from itsdownstream points.
 7. The method of claim 6 wherein each dispatch engineservices downstream points on a common electrical circuit.
 8. The methodof claim 6 wherein the root dispatch engine generates a frequencyregulation draw requirement for the aggregation based on an automaticgeneration control (AGC) signal.
 9. The method of claim 6 wherein thehierarchy conveys constraints upward through the hierarchy and conveysdraw dispatches downward through the hierarchy.
 10. The method of claim6 wherein at least one downstream dispatch engine is configured to senddraw dispatches to its downstream points that are generated byminimizing a total cost C using the constrained cost minimization:$C = {{\sum\limits_{e = 1}^{N}{\sum\limits_{g = 1}^{G}\; {w_{g}{C_{e,g}\left( P_{e} \right)}{\mspace{11mu} \;}{s.\; t.\mspace{14mu} P_{req}}}}} = {\sum\limits_{e = 1}^{N}\; {P_{e}\mspace{14mu} {and}\mspace{14mu} {other}\mspace{14mu} {constraints}}}}$with respect to draw dispatches P_(e), where e=1, . . . , N index theloads or sub-aggregations, g=1, . . . , G index goals of theoptimization, C_(e,g)(P_(e)) is a cost associated with the g^(th) goalfor load e, w_(g) is a priority weight assigned to the g^(th) goal,P_(req) is the draw dispatch received by the downstream dispatch enginefrom the dispatch engine above it in the hierarchy, and “otherconstraints” denotes the downstream point draw constraints communicatedto the downstream dispatch engine from its downstream points.
 11. Themethod of claim 6 wherein at least one downstream dispatch engine isconfigured to send draw dispatches to its downstream points that aregenerated by solving:$P_{req} = {\sum\limits_{e = 1}^{N}{P_{e}\mspace{14mu} {s.\; t.\mspace{14mu} {other}}\mspace{14mu} {constraints}}}$to determine draw dispatches P_(e), where e=1, . . . , N index the loadsor sub-aggregations, P_(req) is the draw dispatch received by thedownstream dispatch engine from the dispatch engine above it in thehierarchy, and “other constraints” denotes the downstream point drawconstraints communicated to the downstream dispatch engine from itsdownstream points.
 12. A method operating on an aggregation of loadsthat draw electricity, the method comprising: determining a baselinelong-term draw dispatch for the aggregation based on a long-term drawrequirement over a first time interval; modulating the baselinelong-term draw dispatch over a second time interval shorter than thefirst time interval based on a short-term draw requirement to determinea draw dispatch for the aggregation; determining load dispatches for theloads of the aggregation to satisfy the draw dispatch for theaggregation; communicating the load dispatches to the loads of theaggregation; and operating the loads of the aggregation in accordancewith the communicated load dispatches.
 13. The method of claim 12wherein the long-term draw requirement is a load shifting command. 14.The method of claim 13 wherein the load shifting command comprises anindication of the power generation level of a wind farm, photovoltaicfarm, or other intermittent power generation source.
 15. The method ofclaim 12 wherein the short-term draw requirement is a frequencyregulation (FR) draw requirement generated based on an automaticgeneration control (AGC) signal.
 16. The method of claim 12 wherein theshort-term draw requirement averages to zero over the first timeinterval.
 17. The method of claim 12 wherein the first time interval ison the order of minutes or hours and the second time interval is on theorder of seconds.
 18. The method of claim 12 wherein the modulatingcomprises determining a modulation term ΔP_(FR) of the baselinelong-term draw dispatch P_(LS) wherein the draw dispatch for theaggregation is P_(LS)+ΔP_(FR), and the determining of load dispatchesfor the loads of the aggregation to satisfy the draw dispatchP_(LS)+ΔP_(FR) for the aggregation comprises minimizing minimizing atotal cost C using the constrained cost minimization:$C = {{{\sum\limits_{l = 1}^{L}{\sum\limits_{g = 1}^{G}\; {w_{g}{C_{l,g}\left( P_{l} \right)}{\mspace{11mu} \;}{s.\; t.\mspace{14mu} P_{LS}}}}} + {\Delta \; P_{FR}}} = {\sum\limits_{l = 1}^{L}\; {P_{l}\mspace{14mu} {and}\mspace{14mu} {load}\mspace{14mu} {constraints}}}}$with respect to load dispatches P_(l), where l=1, . . . , L indexes theloads of the aggregation, g=1, . . . , G indexes goals of theoptimization, w_(g) is a priority weight assigned to the g^(th) goal,and C_(l,g)(P_(l)) is a cost associated with the g^(th) goal for load l.19. The method of claim 12 wherein the modulating comprises determininga modulation term ΔP_(FR) of the baseline long-term draw dispatch P_(LS)wherein the draw dispatch for the aggregation is P_(LS)+ΔP_(FR), and thedetermining of load dispatches for the loads of the aggregation tosatisfy the draw dispatch P_(LS)+ΔP_(FR) for the aggregation comprisessolving:${P_{LS} + {\Delta \; P_{FR}}} = {\sum\limits_{l = 1}^{L}\; {P_{l}\mspace{14mu} {s.\; t.\mspace{14mu} {load}}\mspace{14mu} {constraints}}}$to determine the load dispatches P_(l), where the summation l=1, . . . ,L is over the loads of the aggregation.
 20. A method operating on anaggregation of loads that draw electricity from an electrical powergrid, the method comprising: optimizing load draw dispatches P_(l) forthe loads of the aggregation where l=1, . . . , L indexes the loads ofthe aggregation by minimizing a total cost C using a constrained costminimization with respect to the load draw dispatches P_(l), where thecost function includes cost components indexed g=1, . . . , G, a cost isassociated with the g^(th) goal for load l, a priority weight w_(g) isassigned to the g^(th) goal, and P_(req) is a draw requirement for theaggregation of loads; communicating the load dispatches P_(l) to theloads of the aggregation; and operating the loads of the aggregation inaccord with the communicated load dispatches P_(l).
 21. The method ofclaim 20 wherein the optimizing comprises: minimizing a total cost Cusing the constrained cost minimization:$C = {{\sum\limits_{l = 1}^{L}{\sum\limits_{g = 1}^{G}\; {w_{g}{C_{l,g}\left( P_{l} \right)}{\mspace{11mu} \;}{s.\; t.\mspace{14mu} P_{reg}}}}} = {\sum\limits_{l = 1}^{L}\; P_{l}}}$with respect to the draw dispatches P_(l), where g=1, . . . , G indexgoals of the optimization, C_(l,g)(P_(l)) is a cost associated with theg^(th) goal for load l, w_(g) is a priority weight assigned to theg^(th) goal, and P_(req) is a draw requirement for the aggregation ofloads.
 22. The method of claim 20 wherein the constrained costminimization is further constrained by constraints on one or more loadsof the aggregation.
 23. The method of claim 20 further comprising:generating the draw requirement P_(req) for the aggregation of loadsfrom an automatic generation control (AGC) signal provided by theelectrical power grid.